package tech.aistar.design.template.demo01;

/**
 * 本类用来演示: 模板类
 *
 * @author: success
 * @date: 2022/7/25 9:37 上午
 */
public abstract class PlayerAbstract {

    //1. 开幕
    public abstract void start();

    //2. 表演 - 各个演员实现的方式是不一样的
    public abstract void play();

    //3. 闭幕
    public abstract void end();


    //4. 提供一个顶级的方法 - 控制业务方法的执行的顺序 - 不能够改变
    public final void execute(){
        start();

        play();

        end();
    }


}
